package code19_jdk8.stream;

import java.util.List;

public class TestMiddle03 {

	public static void main(String[] args) {
		//f1();
		
		f2();
	}

	private static void f2() {
		Emp.getData().stream()
		// 按照指定的规则进行排序
//		.sorted( (e1, e2) -> {
//			// 工资降序
//			double d = e2.getSal() - e1.getSal();
//			if (0 == d) {
//				return 0;
//			}
//			if (d > 0) {
//				return 1;
//			} 
//			return -1;
//		})
//		.sorted( (e1, e2) -> {
//			// 工资升序
//			double d = e1.getSal() - e2.getSal();
//			if (0 == d) {
//				return 0;
//			}
//			if (d > 0) {
//				return 1;
//			} 
//			return -1;
//		})
		.sorted( (e1, e2) -> Double.compare(e1.getSal(), e2.getSal()) )
		.forEach(System.out::println);
	}

	private static void f1() {
		List<Emp> data = Emp.getData();
		data.stream()
		// 按照元素的自然顺序(需要实现 Comparable 接口) 升序排序
		.sorted()
		.forEach(System.out::println);
//		System.out.println("-----------");
//		for (Emp emp : data) {
//			System.out.println(emp);
//		}
	}
	
}
